#include "CString.h"

CString::CString()
{
    cout<<"这里是不带参数的构造函数"<<endl;
    pStr = NULL;
    len = 0;
}

CString::CString(const char *pStr)
{
    cout << "你写一个等号等于char*的内容也可以调用我" << endl;
    len = strlen(pStr);             // 计算出传入逇字符串的长度
    this->pStr = new char[len + 1]; // 新建一个足够大的缓冲区去存储出入的字符串
    strcpy(this->pStr, pStr);       // 把出入的字符串拷贝到成员指针所指向的字符串空间中
}
CString::CString(const CString & str)
{
    cout<<"这里是拷贝构造函数"<<endl;
    len = str.len;//把传入的字符串的长度赋值给当前调用dengyu函数的对象的长度
    pStr = new char[len+1];//根据对方的长度，自己也创建一个同样大小的空间
    strcpy(pStr ,str.pStr);//把对方的内容拷贝到自己的空间中
}

CString::CString(int size)
{
    cout << "你想创建一个大小为" << size << "的空字符串" << endl;
    len = size;
    pStr = new char[len + 1];
}















